define(['jquery'], () => {
    class Header {
      constructor () {
        this.loadHTML().then(() => {
         // ...
         this.calcCartCount () 
        })
        
      }
      loadHTML () {
        // load是一个异步方法，所以要操作header的DOM元素必须要load加载完成才能使用
        // 除了在load完成之后调用还能使用事件委托
        return new Promise(resolve => {
          // $('header').load('ml/modules/header.html', () => {
          //   resolve()
          // })
  
          $('header').load('/html/modules/header.html', resolve)
        })
      }
      calcCartCount () {
        console.log('111')
        let count = 0
        let cart = localStorage.getItem('cart')
        if (cart) {
          cart = JSON.parse(cart)
          count = cart.reduce((total, shop) => {
            return total + shop.num
          },0)
        }
        $('#shopNum').html(count)
      }
    }
    return new Header()
  })